home *** CD-ROM | disk | FTP | other *** search
- Short: PhxAss V4.33 68xxx Macro Assembler
- Author: frank@phoenix.owl.de (Frank Wille)
- Uploader: frank@phoenix.owl.de
- Type: dev/asm
- Replaces: dev/asm/PhxAss432*
- Distribution: No CD
- Version: 4.33
- Requires: OS2.04
-
- PhxAss V4.33 is a highly optimizing macro assembler for Motorola's 680x0
- CPUs, 6888x FPUs and 68851 MMU (of course, the 030, 040 and 060 MMUs are
- also supported). It requires OS2.04 (V37) and 1 MB RAM as minimum.
-
- Most important features:
- o PhxAss is FREEWARE.
- o Symbolic and Source Level Debugging. Possibility to enable Source
- Level Debugging for high level languages too.
- o Automatic generation of executables (if possible).
- o Creates relocatable Amiga-DOS objects or absolute code (written into
- a file (raw or Motorola S-Format), into memory or directly onto disk).
- o Small Code and Small Data support (also support for __MERGED sections).
- o Listing file, Cross Reference Listing, Equates file.
- o Complete floating point support: You can use complex floating point
- expressions, including float functions (sine, logarithm, square root,
- power, etc.), everywhere in your source, e.g. defining float EQUates or
- SETs.
- o Switches for ten different optimizations.
- o Locale symbols (xxx$ and .xxx type).
- o Up to 36 macro parameters.
- o Support for Motorola's old and new operand style (even in 68000 mode).
- o locale.library usage (english, german, swedish, italian, danish, dutch,
- hungarian and french ).
- o Nearly all directives of the most popular assemblers like Seka, DevPac or
- AS (Aztec) are supported. Example: INCBIN, INCDIR, CODE_C, REPT, RS,
- RSRESET, EQUR, REG, OFFSET, XDEF, XREF, PUBLIC, OUTPUT ...
- o PhxAss is able to stay resident in memory.
-
- You will find two different versions of PhxAss in this distribution:
- 1. PhxAss: The standard 680x0,FPU,MMU macro assembler.
- 2. GigaPhxAss: Identical to PhxAss, but source codes are not limited to
- 65535 lines. Quite useful for assembling huge Reassembler outputs.
-
-
- CHANGES SINCE PHXASS V4.32 (last Aminet release):
-
- Fixed Bugs:
- o Negation of floating point functions was impossible (Example: -sin(x)).
- o Infinite loop on unknown section type or BSS_F.
- o "section blah,code,chip" and "section blah,code,fast" were coalesced
- by PhxAss by using the MemFlags of the first definition. They're
- differentiated now.
- o __RS got the value of the last RS-offset instead of the RS-counter.
- o Crash on generation of an absolute file by using the FILE directive.
- The bug existed since the implementation of buffered I/O routines in v4.31.
- o Setting new optimization flags in source text by using OPT, only
- caused an addition of the specified flags instead of a complete
- redefinition.
- o There were still some problems with CNOP, where a short-branch over
- a CNOP could get out of range in some situations.
- o Empty sections, which were referenced by code of another section,
- are no longer deleted. Instead a section with size 0 will be created
- in the object file or the executable.
- o According to Motorola's 6888x User's Manual, only .b, .w, .l and .s
- are allowed as an extension for FMOVE.? Dm,FPn and FMOVE.? FPm,Dn.
- o IFD/IFND didn't work if the symbol has a value of zero.
- o If DS does an automatic alignment, a label in the same line was not
- affected.
- o The bitfield instructions BFxxx <ea>{x:y}, caused a syntax error, when
- the addressing mode was absolute short/long.
-
- New Features:
- o New, bigger hash tables for symbols and mnemonics shorten the compilation
- time by approx. 10-30%. The size of those hash tables may be modified
- by GLOBHASHTAB/K/N, LOCHASHTAB/K/N and MNEMOHASHTAB/K/N.
- o The new SET symbol CARG can select a specific macro parameter by its
- value. \. selects the macro parameter with the number of CARG. A post
- incrementation and decrementation of CARG is supplied by \+ and \- .
- o __CPU contains the current CPU type, selected by MACHINE. __FPU
- contains the current FPU id., selected by MACHINE and FPU. __MMU
- shows, whether PMMU code generation is allowed.
- o The command line parameter TO allows a directory as destination. An object
- file with the name of the source text and ".o" extension will be created.
- o New command line parameter SHOWOPT/S enables listing of all optimized
- source lines together with the number of bytes gained.
- o A0 and A1 are additionally allowed for small data base register.
- o The small data base register may be changed by NEAR An multiple times
- in a source text.
- o Macro parameter \0 (extension) may be used in strings too.
- o Implemented FEQUR directive (EQUR for FPU registers).
- o <...> can be used in macros to indicate an indivisible term. Examples:
- <Hello World!> or <"Test",0>.
- o All undefined XDEF symbols will be listed when assembly has finished.
-